Platform Explorer / Nuxeo Platform 2023.20

Extension point widgets

Contribution Descriptors

  • Class: org.nuxeo.ecm.platform.forms.layout.descriptors.WidgetDescriptor

Existing Contributions

Contributions are presented in the same order as the registration order on this extension point. This order is displayed before the contribution name, in brackets.

  • nuxeo-diff-jsf-2023.20.15.jar /OSGI-INF/diff-widgets-contrib.xml
    <extension point="widgets" target="org.nuxeo.ecm.platform.forms.layout.LayoutStore">
    
        <!-- Generic widgets: name = diff property type, see: org.nuxeo.ecm.diff.model.PropertyType -->
        <widget name="string" type="template">
          <categories>
            <category>diff</category>
          </categories>
          <properties mode="any">
            <property name="widgetType">text</property>
            <property name="template">
              /widgets/generic_diff_widget_template.xhtml
            </property>
          </properties>
        </widget>
    
        <widget name="boolean" type="template">
          <categories>
            <category>diff</category>
          </categories>
          <properties mode="any">
            <property name="widgetType">checkbox</property>
            <property name="template">
              /widgets/generic_diff_widget_template.xhtml
            </property>
          </properties>
        </widget>
    
        <widget name="date" type="template">
          <categories>
            <category>diff</category>
          </categories>
          <properties mode="any">
            <property name="widgetType">datetime</property>
            <property name="template">
              /widgets/generic_diff_widget_template.xhtml
            </property>
          </properties>
        </widget>
    
        <widget name="integer" type="template">
          <categories>
            <category>diff</category>
          </categories>
          <properties mode="any">
            <property name="widgetType">int</property>
            <property name="template">
              /widgets/generic_diff_widget_template.xhtml
            </property>
          </properties>
        </widget>
    
        <widget name="long" type="template">
          <categories>
            <category>diff</category>
          </categories>
          <properties mode="any">
            <property name="widgetType">int</property>
            <property name="template">
              /widgets/generic_diff_widget_template.xhtml
            </property>
          </properties>
        </widget>
    
        <widget name="double" type="template">
          <categories>
            <category>diff</category>
          </categories>
          <properties mode="any">
            <property name="widgetType">double</property>
            <property name="template">
              /widgets/generic_diff_widget_template.xhtml
            </property>
          </properties>
        </widget>
    
        <widget name="content" type="file">
          <categories>
            <category>diff</category>
          </categories>
        </widget>
    
        <widget name="complex" type="template">
          <categories>
            <category>diff</category>
          </categories>
          <properties mode="any">
            <property name="display">inline</property>
            <property name="template">
              /widgets/complex_diff_widget_template.xhtml
            </property>
          </properties>
        </widget>
    
        <widget name="scalarList" type="template">
          <categories>
            <category>diff</category>
          </categories>
          <properties mode="any">
            <property name="display">inline</property>
            <property name="displayAllItems">false</property>
            <property name="displayItemIndexes">true</property>
            <property name="template">
              /widgets/list_diff_widget_template.xhtml
            </property>
          </properties>
        </widget>
    
        <widget name="contentList" type="template">
          <categories>
            <category>diff</category>
          </categories>
          <properties mode="any">
            <property name="display">inline</property>
            <property name="displayAllItems">false</property>
            <property name="displayItemIndexes">true</property>
            <property name="template">
              /widgets/list_diff_widget_template.xhtml
            </property>
          </properties>
        </widget>
    
        <widget name="complexList" type="list">
          <categories>
            <category>diff</category>
          </categories>
          <properties mode="any">
            <property name="display">inline</property>
            <property name="displayAllItems">false</property>
            <property name="displayItemIndexes">true</property>
            <property name="template">
              /widgets/list_diff_widget_template.xhtml
            </property>
          </properties>
        </widget>
    
        <widget name="contentDiffLinks" type="template">
          <categories>
            <category>diff</category>
          </categories>
          <properties mode="any">
            <property name="template">
              /widgets/content_diff_links_widget_template.xhtml
            </property>
          </properties>
        </widget>
    
        <!-- Specific widgets: name = property xpath -->
        <widget name="dublincore:created" type="datetime">
          <categories>
            <category>diff</category>
          </categories>
          <labels>
            <label mode="any">label.dublincore.created</label>
          </labels>
          <translated>true</translated>
          <properties widgetMode="any">
            <property name="pattern">#{nxu:basicDateAndTimeFormatter()}
            </property>
          </properties>
        </widget>
    
        <widget name="dublincore:modified" type="datetime">
          <categories>
            <category>diff</category>
          </categories>
          <labels>
            <label mode="any">label.dublincore.modified</label>
          </labels>
          <translated>true</translated>
          <properties widgetMode="any">
            <property name="pattern">#{nxu:basicDateAndTimeFormatter()}
            </property>
          </properties>
        </widget>
    
        <widget name="dublincore:issued" type="datetime">
          <categories>
            <category>diff</category>
          </categories>
          <labels>
            <label mode="any">label.dublincore.issueDate</label>
          </labels>
          <translated>true</translated>
          <properties widgetMode="any">
            <property name="pattern">#{nxu:basicDateAndTimeFormatter()}
            </property>
          </properties>
        </widget>
    
        <widget name="dublincore:valid" type="datetime">
          <categories>
            <category>diff</category>
          </categories>
          <labels>
            <label mode="any">label.dublincore.validationDate</label>
          </labels>
          <translated>true</translated>
          <properties widgetMode="any">
            <property name="pattern">#{nxu:basicDateAndTimeFormatter()}
            </property>
          </properties>
        </widget>
    
        <widget name="dublincore:expired" type="datetime">
          <categories>
            <category>diff</category>
          </categories>
          <labels>
            <label mode="any">label.dublincore.expired</label>
          </labels>
          <translated>true</translated>
          <properties widgetMode="any">
            <property name="pattern">#{nxu:basicDateAndTimeFormatter()}
            </property>
          </properties>
        </widget>
    
        <widget name="note:note" type="richtext_with_mimetype">
          <categories>
            <category>diff</category>
          </categories>
          <labels>
            <label mode="any">label.note.note</label>
          </labels>
          <translated>true</translated>
          <properties mode="any">
            <property name="translatedHtml">
              #{noteActions.translateImageLinks(field_0)}
            </property>
            <property name="cssClass">note_content_block</property>
          </properties>
        </widget>
    
        <widget name="file:content" type="file">
          <categories>
            <category>diff</category>
          </categories>
          <labels>
            <label mode="any">label.summary.download.file</label>
          </labels>
          <translated>true</translated>
        </widget>
    
        <widget name="files:files" type="list">
          <categories>
            <category>diff</category>
          </categories>
          <labels>
            <label mode="any">label.summary.download.attachments</label>
          </labels>
          <translated>true</translated>
          <properties mode="any">
            <property name="display">inline</property>
            <property name="displayAllItems">false</property>
            <property name="displayItemIndexes">true</property>
            <property name="template">
              /widgets/list_diff_widget_template.xhtml
            </property>
          </properties>
        </widget>
    
        <widget name="dublincore:nature" type="selectOneDirectory">
          <categories>
            <category>diff</category>
          </categories>
          <labels>
            <label mode="any">label.dublincore.nature</label>
          </labels>
          <translated>true</translated>
          <properties mode="any">
            <property name="directoryName">nature</property>
            <property name="localize">true</property>
            <property name="ordering">ordering,label</property>
          </properties>
        </widget>
    
        <widget name="dublincore:subjects/item" type="template">
          <categories>
            <category>diff</category>
          </categories>
          <labels>
            <label mode="any">label.dublincore.subjects.item</label>
          </labels>
          <translated>true</translated>
          <properties mode="any">
            <property name="template">/widgets/subjects_item_widget_template.xhtml
            </property>
          </properties>
        </widget>
    
        <widget name="dublincore:coverage" type="template">
          <categories>
            <category>diff</category>
          </categories>
          <labels>
            <label mode="any">label.dublincore.coverage</label>
          </labels>
          <translated>true</translated>
          <properties mode="any">
            <property name="template">/widgets/coverage_widget.xhtml
            </property>
          </properties>
        </widget>
    
        <widget name="dublincore:contributors/item" type="template">
          <categories>
            <category>diff</category>
          </categories>
          <labels>
            <label mode="any">label.dublincore.contributors.item</label>
          </labels>
          <translated>true</translated>
          <properties mode="any">
            <property name="template">/widgets/contributors_item_widget_template.xhtml
            </property>
          </properties>
        </widget>
    
        <widget name="dublincore:lastContributor" type="template">
          <categories>
            <category>diff</category>
          </categories>
          <labels>
            <label mode="any">label.dublincore.lastContributor</label>
          </labels>
          <translated>true</translated>
          <properties mode="any">
            <property name="template">
              /widgets/single_user_widget_template.xhtml
            </property>
          </properties>
        </widget>
    
      </extension>
  • nuxeo-platform-actions-jsf-2023.20.15.jar /OSGI-INF/action-widgettypes-contrib.xml
    <extension point="widgets" target="org.nuxeo.ecm.platform.forms.layout.LayoutStore">
    
        <widget name="label" type="text">
          <categories>
            <category>actionWidgetTypeConf</category>
          </categories>
          <labels>
            <label mode="any">Label</label>
          </labels>
          <helpLabels>
            <label mode="any">
              The action label.
            </label>
          </helpLabels>
          <fields>
            <field>label</field>
          </fields>
        </widget>
    
        <widget name="icon" type="text">
          <categories>
            <category>actionWidgetTypeConf</category>
          </categories>
          <labels>
            <label mode="any">icon</label>
          </labels>
          <helpLabels>
            <label mode="any">
              The action icon path. Example:
              "/icons/contextual_menu/share.png".
            </label>
          </helpLabels>
          <fields>
            <field>icon</field>
          </fields>
        </widget>
    
        <!-- not used as of 5.7.3 -->
        <widget name="help" type="text">
          <categories>
            <category>actionWidgetTypeConf</category>
          </categories>
          <labels>
            <label mode="any">help</label>
          </labels>
          <helpLabels>
            <label mode="any">
              The action help, displayed in a tooltip.
            </label>
          </helpLabels>
          <fields>
            <field>help</field>
          </fields>
        </widget>
    
        <!-- not used as of 5.7.3 -->
        <widget name="accessKey" type="text">
          <categories>
            <category>actionWidgetTypeConf</category>
          </categories>
          <labels>
            <label mode="any">accessKey</label>
          </labels>
          <helpLabels>
            <label mode="any">
              The action access key.
            </label>
          </helpLabels>
          <fields>
            <field>accessKey</field>
          </fields>
        </widget>
    
        <widget name="immediate" type="checkbox">
          <categories>
            <category>actionWidgetTypeConf</category>
          </categories>
          <labels>
            <label mode="any">Immediate</label>
          </labels>
          <helpLabels>
            <label mode="any">
              Boolean stating if the action is immediate (called
              during JSF "apply request value" phase instead of the "process
              validations" phase), useful for "cancel" buttons that should not issue
              a validation error for required fields.
            </label>
          </helpLabels>
          <fields>
            <field>immediate</field>
          </fields>
        </widget>
    
        <widget name="ajaxReRender" type="text">
          <categories>
            <category>actionWidgetTypeConf</category>
          </categories>
          <labels>
            <label mode="any">Ajax reRender</label>
          </labels>
          <helpLabels>
            <label mode="any">
              Ajax rerender ids, separated by commas, used in
              combination with the "ajaxSupport" property.
            </label>
          </helpLabels>
          <fields>
            <field>ajaxReRender</field>
          </fields>
        </widget>
    
        <widget name="ajaxSupport" type="checkbox">
          <categories>
            <category>actionWidgetTypeConf</category>
          </categories>
          <labels>
            <label mode="any">Ajax support</label>
          </labels>
          <helpLabels>
            <label mode="any">
              Boolean stating if the action supports ajax. Mandatory
              for this action to be ajaxified when caller asks for an ajax form to
              be used. Default value depends on the action type policy.
            </label>
          </helpLabels>
          <fields>
            <field>ajaxSupport</field>
          </fields>
        </widget>
    
        <widget name="styleClass" type="text">
          <categories>
            <category>actionWidgetTypeConf</category>
          </categories>
          <labels>
            <label mode="any">Style class</label>
          </labels>
          <helpLabels>
            <label mode="any">
              The action style class.
            </label>
          </helpLabels>
          <fields>
            <field>styleClass</field>
          </fields>
        </widget>
    
        <widget name="target" type="text">
          <categories>
            <category>actionWidgetTypeConf</category>
          </categories>
          <labels>
            <label mode="any">Target</label>
          </labels>
          <helpLabels>
            <label mode="any">
              The action target, for instance "_blank".
            </label>
          </helpLabels>
          <fields>
            <field>target</field>
          </fields>
        </widget>
    
        <widget name="onclick" type="text">
          <categories>
            <category>actionWidgetTypeConf</category>
          </categories>
          <labels>
            <label mode="any">Onclick</label>
          </labels>
          <helpLabels>
            <label mode="any">
              Javascript code to call when clicking on the action.
            </label>
          </helpLabels>
          <fields>
            <field>onclick</field>
          </fields>
        </widget>
    
        <widget name="confirm" type="text">
          <categories>
            <category>actionWidgetTypeConf</category>
          </categories>
          <labels>
            <label mode="any">Confirm</label>
          </labels>
          <helpLabels>
            <label mode="any">
              Javascript confirmation code, called when clicking on
              the action.
            </label>
          </helpLabels>
          <fields>
            <field>confirm</field>
          </fields>
        </widget>
    
        <widget name="confirmMessage" type="text">
          <categories>
            <category>actionWidgetTypeConf</category>
          </categories>
          <labels>
            <label mode="any">Confirm message</label>
          </labels>
          <helpLabels>
            <label mode="any">
              Alternative to the "confirm" property, only stating
              the confirmation message, that can be a message to translate.
            </label>
          </helpLabels>
          <fields>
            <field>confirmMessage</field>
          </fields>
        </widget>
    
        <widget name="confirmMessageArgs" type="list">
          <categories>
            <category>actionWidgetTypeConf</category>
          </categories>
          <labels>
            <label mode="any">Confirm message arguments</label>
          </labels>
          <fields>
            <field>confirmMessageArgs</field>
          </fields>
          <helpLabels>
            <label mode="any">
              Confirm message arguments, referenced by the confirm
              message translation in messages.properties files.
            </label>
          </helpLabels>
          <properties widgetMode="any">
            <property name="hideSubLabels">true</property>
          </properties>
          <subWidgets>
            <widget name="messageArg" type="text">
              <fields>
                <field/>
              </fields>
              <labels>
                <label mode="any"/>
              </labels>
            </widget>
          </subWidgets>
        </widget>
    
        <widget name="fancybox_include" type="text">
          <categories>
            <category>actionWidgetTypeConf</category>
          </categories>
          <labels>
            <label mode="any">Include</label>
          </labels>
          <helpLabels>
            <label mode="any">
              The template path to show as the fancybox content
              (ignored if property "iframe" is filled). If this template holds a
              form, it should be using the variable "fancyboxFormId" as its form id
              for the fancybox to be reopened on validation error. Example:
              "/incl/bulk_edit_box.xhtml"
            </label>
          </helpLabels>
          <fields>
            <field>include</field>
          </fields>
        </widget>
    
        <widget name="fancybox_iframe" type="text">
          <categories>
            <category>actionWidgetTypeConf</category>
          </categories>
          <labels>
            <label mode="any">Iframe</label>
          </labels>
          <helpLabels>
            <label mode="any">
              URL to display as the fancybox content. Example:
              "#{'#{'}previewActions.getCurrentDocumentPreviewPopupURL()}"
            </label>
          </helpLabels>
          <fields>
            <field>iframe</field>
          </fields>
        </widget>
    
        <widget name="fancybox_width" type="text">
          <categories>
            <category>actionWidgetTypeConf</category>
          </categories>
          <labels>
            <label mode="any">Width</label>
          </labels>
          <helpLabels>
            <label mode="any">
              The fancybox width, defaults to "90%".
            </label>
          </helpLabels>
          <fields>
            <field>width</field>
          </fields>
        </widget>
    
        <widget name="fancybox_height" type="text">
          <categories>
            <category>actionWidgetTypeConf</category>
          </categories>
          <labels>
            <label mode="any">Height</label>
          </labels>
          <helpLabels>
            <label mode="any">
              The fancybox height, defaults to "90%".
            </label>
          </helpLabels>
          <fields>
            <field>height</field>
          </fields>
        </widget>
    
        <widget name="fancybox_scrolling" type="selectOneListbox">
          <categories>
            <category>actionWidgetTypeConf</category>
          </categories>
          <labels>
            <label mode="any">Scrolling</label>
          </labels>
          <helpLabels>
            <label mode="any">
              The fancybox scrolling behaviour, used to create or
              hide scrollbars. Defaults to "auto", also accepts 'yes' or 'no'.
            </label>
          </helpLabels>
          <fields>
            <field>scrolling</field>
          </fields>
          <selectOptions>
            <option itemLabel="Auto (default)" itemValue=""/>
            <option itemLabel="Yes" itemValue="yes"/>
            <option itemLabel="No" itemValue="no"/>
          </selectOptions>
        </widget>
    
        <widget name="fancybox_autoScale" type="text">
          <categories>
            <category>actionWidgetTypeConf</category>
          </categories>
          <labels>
            <label mode="any">Auto scale</label>
          </labels>
          <helpLabels>
            <label mode="any">
              The boolean value stating if the fancybox is scaled to
              fit in viewport. Defaults to "true".
            </label>
          </helpLabels>
          <fields>
            <field>autoScale</field>
          </fields>
        </widget>
    
        <widget name="fancybox_autoDimensions" type="text">
          <categories>
            <category>actionWidgetTypeConf</category>
          </categories>
          <labels>
            <label mode="any">Auto dimensions</label>
          </labels>
          <helpLabels>
            <label mode="any">
              The boolean value stating if the fancybox is resized
              when the view is changed by ajax actions for instance. Defaults to
              "true". The fancybox should have dimensions for this to work properly.
            </label>
          </helpLabels>
          <fields>
            <field>autoDimensions</field>
          </fields>
        </widget>
    
        <widget name="fancybox_modal" type="checkbox">
          <categories>
            <category>actionWidgetTypeConf</category>
          </categories>
          <labels>
            <label mode="any">Modal</label>
          </labels>
          <fields>
            <field>modal</field>
          </fields>
          <helpLabels>
            <label mode="any">
              The boolean value stating if the fancybox is modal and
              cannot be closed when using the escape button, for instance.
              Defaults
              to "false".
            </label>
          </helpLabels>
        </widget>
    
        <widget name="fancybox_centerOnScroll" type="text">
          <categories>
            <category>actionWidgetTypeConf</category>
          </categories>
          <labels>
            <label mode="any">centerOnScroll</label>
          </labels>
          <helpLabels>
            <label mode="any">
              The boolean value stating if the fancybox is centered
              while scrolling the page. Defaults to "true".
            </label>
          </helpLabels>
          <fields>
            <field>centerOnScroll</field>
          </fields>
        </widget>
    
        <widget name="fancybox_enableEscapeButton" type="text">
          <categories>
            <category>actionWidgetTypeConf</category>
          </categories>
          <labels>
            <label mode="any">enableEscapeButton</label>
          </labels>
          <helpLabels>
            <label mode="any">
              The boolean value stating if the fancybox is closed
              when pressing the escape key. Defaults to "true".
            </label>
          </helpLabels>
          <fields>
            <field>enableEscapeButton</field>
          </fields>
        </widget>
    
        <widget name="fancybox_onClosed" type="text">
          <categories>
            <category>actionWidgetTypeConf</category>
          </categories>
          <labels>
            <label mode="any">onClosed</label>
          </labels>
          <helpLabels>
            <label mode="any">
              Javascript code to call when the fancybox is closed.
              Available since 6.0.
            </label>
          </helpLabels>
          <fields>
            <field>onClosed</field>
          </fields>
        </widget>
    
        <widget name="rest_document_link_view" type="text">
          <categories>
            <category>actionWidgetTypeConf</category>
          </categories>
          <labels>
            <label mode="any">View</label>
          </labels>
          <helpLabels>
            <label mode="any">
              Specific view to use for the rest document link.
              Available since 6.0.
            </label>
          </helpLabels>
          <fields>
            <field>view</field>
          </fields>
        </widget>
    
        <widget name="rest_document_link_pattern" type="text">
          <categories>
            <category>actionWidgetTypeConf</category>
          </categories>
          <labels>
            <label mode="any">Pattern</label>
          </labels>
          <helpLabels>
            <label mode="any">
              Specific pattern to use for the rest document link.
              Available since 6.0.
            </label>
          </helpLabels>
          <fields>
            <field>pattern</field>
          </fields>
        </widget>
    
    
      </extension>
  • nuxeo-platform-actions-jsf-2023.20.15.jar /OSGI-INF/widgettypes-contrib.xml
    <extension point="widgets" target="org.nuxeo.ecm.platform.forms.layout.LayoutStore">
    
        <widget name="actions_headerStyleClass" type="text">
          <categories>
            <category>widgetTypeConf</category>
          </categories>
          <labels>
            <label mode="any">Header style class</label>
          </labels>
          <helpLabels>
            <label mode="any">
              Style class for the header, displaying this
              widget
              label.
            </label>
          </helpLabels>
          <fields>
            <field>headerStyleClass</field>
          </fields>
        </widget>
    
        <widget name="actions_styleClass" type="text">
          <categories>
            <category>widgetTypeConf</category>
          </categories>
          <labels>
            <label mode="any">Style class</label>
          </labels>
          <helpLabels>
            <label mode="any">
              Style class for the global container div.
            </label>
          </helpLabels>
          <fields>
            <field>styleClass</field>
          </fields>
        </widget>
    
        <widget name="actions_actionStyleClass" type="text">
          <categories>
            <category>widgetTypeConf</category>
          </categories>
          <labels>
            <label mode="any">Action style class</label>
          </labels>
          <helpLabels>
            <label mode="any">
              Style class for each action link.
            </label>
          </helpLabels>
          <fields>
            <field>actionStyleClass</field>
          </fields>
        </widget>
    
        <widget name="actions_addForm" type="checkbox">
          <categories>
            <category>widgetTypeConf</category>
          </categories>
          <labels>
            <label mode="any">Add form</label>
          </labels>
          <helpLabels>
            <label mode="any">
              If set to true, actions will be surrounded
              by a form,
              so there should be no other surrounding form.
              This property is useful
              when fancybox actions need to open a
              popup in another form. Available
              since 5.7, defaults to false.
            </label>
          </helpLabels>
          <fields>
            <field>addForm</field>
          </fields>
        </widget>
    
        <widget name="actions_useAjaxForm" type="checkbox">
          <categories>
            <category>widgetTypeConf</category>
          </categories>
          <labels>
            <label mode="any">Use ajax actions</label>
          </labels>
          <helpLabels>
            <label mode="any">
              If set to true, actions will be performed
              using ajax.
              Note that sometimes, selection actions will
              require you to reload the
              whole page for other elements than
              the content view to be re-rendered,
              so using ajax will not
              be user friendly in these cases. Available from
              5.7, defaults to false.
            </label>
          </helpLabels>
          <fields>
            <field>useAjaxForm</field>
          </fields>
        </widget>
    
        <widget name="actions_disableFiltered" type="checkbox">
          <categories>
            <category>widgetTypeConf</category>
          </categories>
          <labels>
            <label mode="any">Disable filtered actions</label>
          </labels>
          <helpLabels>
            <label mode="any">
              If set to true, actions will appear as disabled if
              they are supposed to be filtered (instead of not being displayed at
              all). Available from 5.7, defaults to false.
            </label>
          </helpLabels>
          <fields>
            <field>disableFiltered</field>
          </fields>
        </widget>
    
        <widget name="actions_category" type="selectOneResource">
          <categories>
            <category>widgetTypeConf</category>
          </categories>
          <labels>
            <label mode="any">Category</label>
          </labels>
          <helpLabels>
            <label mode="any">
              The category of actions to use.
            </label>
          </helpLabels>
          <fields>
            <field>category</field>
          </fields>
          <widgetModes>
            <mode value="edit_demo_preview">hidden</mode>
          </widgetModes>
          <properties widgetMode="edit">
            <property name="required">true</property>
          </properties>
          <properties mode="any">
            <property name="resourceName">actionCategories</property>
          </properties>
        </widget>
    
        <widget name="tabs_category" type="selectOneResource">
          <categories>
            <category>widgetTypeConf</category>
          </categories>
          <labels>
            <label mode="any">Category</label>
          </labels>
          <helpLabels>
            <label mode="any">
              The category of tabs to use.
            </label>
          </helpLabels>
          <fields>
            <field>category</field>
          </fields>
          <widgetModes>
            <mode value="edit_demo_preview">hidden</mode>
          </widgetModes>
          <properties widgetMode="edit">
            <property name="required">true</property>
          </properties>
          <properties mode="any">
            <property name="resourceName">tabCategories</property>
          </properties>
        </widget>
    
        <widget name="actions_actionId" type="selectOneResource">
          <categories>
            <category>widgetTypeConf</category>
          </categories>
          <labels>
            <label mode="any">Action</label>
          </labels>
          <helpLabels>
            <label mode="any">
              The action to display.
            </label>
          </helpLabels>
          <fields>
            <field>actionId</field>
          </fields>
          <widgetModes>
            <mode value="edit_demo_preview">hidden</mode>
          </widgetModes>
          <properties widgetMode="edit">
            <property name="required">true</property>
          </properties>
          <properties mode="any">
            <property name="resourceName">actions</property>
          </properties>
        </widget>
    
        <widget name="actions_overallDisplay" type="selectOneListbox">
          <categories>
            <category>widgetTypeConf</category>
          </categories>
          <labels>
            <label mode="any">Overall display</label>
          </labels>
          <helpLabels>
            <label mode="any">
              Overall display of actions.
            </label>
          </helpLabels>
          <fields>
            <field>overallDisplay</field>
          </fields>
          <selectOptions>
            <option itemLabel="Vertical block (default)" itemValue=""/>
            <option itemLabel="Horizontal block" itemValue="horizontal_block"/>
            <option itemLabel="Menu" itemValue="menu"/>
            <option itemLabel="Rollover menu" itemValue="rollover_menu"/>
          </selectOptions>
        </widget>
    
        <widget name="tabs_overallDisplay" type="selectOneListbox">
          <categories>
            <category>widgetTypeConf</category>
          </categories>
          <labels>
            <label mode="any">Overall display</label>
          </labels>
          <helpLabels>
            <label mode="any">
              Overall display of tabs.
            </label>
          </helpLabels>
          <fields>
            <field>overallDisplay</field>
          </fields>
          <selectOptions>
            <option itemLabel="Horizontal block (default)" itemValue=""/>
            <option itemLabel="Vertical block" itemValue="vertical_block"/>
          </selectOptions>
        </widget>
    
        <widget name="tabs_link_pattern" type="text">
          <categories>
            <category>widgetTypeConf</category>
          </categories>
          <labels>
            <label mode="any">Link Pattern</label>
          </labels>
          <helpLabels>
            <label mode="any">
              The document pattern to use for tabs links (optional). Available since 8.1.
            </label>
          </helpLabels>
          <fields>
            <field>pattern</field>
          </fields>
        </widget>
    
        <widget name="tabs_link_view" type="text">
          <categories>
            <category>widgetTypeConf</category>
          </categories>
          <labels>
            <label mode="any">Link View</label>
          </labels>
          <helpLabels>
            <label mode="any">
              The document pattern to use for tabs links (optional). Available since 8.1.
            </label>
          </helpLabels>
          <fields>
            <field>view</field>
          </fields>
        </widget>
    
        <widget name="tabs_hideSingleTab" type="checkbox">
          <categories>
            <category>widgetTypeConf</category>
          </categories>
          <labels>
            <label mode="any">Hide single tab</label>
          </labels>
          <helpLabels>
            <label mode="any">
              Boolean stating if the tabs bar should be hidden in case there is only one tab.
              Defaults to false, available since 6.0.
            </label>
          </helpLabels>
          <fields>
            <field>hideSingleTab</field>
          </fields>
        </widget>
    
        <widget name="actions_maxActionsNumber" type="int">
          <categories>
            <category>widgetTypeConf</category>
          </categories>
          <labels>
            <label mode="any">Maximum number of actions</label>
          </labels>
          <helpLabels>
            <label mode="any">
              Integer indicating the maximum number of
              actions to
              display. When this limit is reached, other
              actions are displayed in a
              menu.
            </label>
          </helpLabels>
          <fields>
            <field>maxActionsNumber</field>
          </fields>
        </widget>
    
        <widget name="actions_moreMenuLabel" type="text">
          <categories>
            <category>widgetTypeConf</category>
          </categories>
          <labels>
            <label mode="any">Label for the "more" menu</label>
          </labels>
          <fields>
            <field>moreMenuLabel</field>
          </fields>
        </widget>
    
      </extension>
  • nuxeo-platform-forms-layout-client-2023.20.15.jar /OSGI-INF/layouts-contrib.xml
    <extension point="widgets" target="org.nuxeo.ecm.platform.forms.layout.LayoutStore">
    
        <widget name="escape" type="selectOneListbox">
          <categories>
            <category>widgetTypeConf</category>
          </categories>
          <labels>
            <label mode="any">Escape</label>
          </labels>
          <helpLabels>
            <label mode="any">
              If set to false, the held value will not be escaped.
              For instance if it contains HTML tags, they will be
              rendered as part of
              the rendered HTML page instead of being rendered as text content.
              Defaults to true.
            </label>
          </helpLabels>
          <fields>
            <field>escape</field>
          </fields>
          <selectOptions>
            <option itemLabel="Yes (default value)" itemValue="true"/>
            <option itemLabel="No" itemValue="false"/>
          </selectOptions>
        </widget>
    
        <widget name="style" type="text">
          <categories>
            <category>widgetTypeConf</category>
          </categories>
          <labels>
            <label mode="any">Style</label>
          </labels>
          <fields>
            <field>style</field>
          </fields>
        </widget>
    
        <widget name="styleClass" type="text">
          <categories>
            <category>widgetTypeConf</category>
          </categories>
          <labels>
            <label mode="any">Style class</label>
          </labels>
          <fields>
            <field>styleClass</field>
          </fields>
        </widget>
    
        <widget name="subStyleClass" type="text">
          <categories>
            <category>widgetTypeConf</category>
          </categories>
          <labels>
            <label mode="any">Sub style class</label>
          </labels>
          <fields>
            <field>subStyleClass</field>
          </fields>
        </widget>
    
        <widget name="subItemStyleClass" type="text">
          <categories>
            <category>widgetTypeConf</category>
          </categories>
          <labels>
            <label mode="any">Sub item style class</label>
          </labels>
          <fields>
            <field>subItemStyleClass</field>
          </fields>
        </widget>
    
        <widget name="title" type="text">
          <categories>
            <category>widgetTypeConf</category>
          </categories>
          <labels>
            <label mode="any">Title</label>
          </labels>
          <fields>
            <field>title</field>
          </fields>
          <widgetModes>
            <mode value="any">hidden</mode>
            <mode value="view_reference">view</mode>
          </widgetModes>
        </widget>
    
        <widget name="text_localize" type="checkbox">
          <categories>
            <category>widgetTypeConf</category>
          </categories>
          <labels>
            <label mode="any">Localize</label>
          </labels>
          <helpLabels>
            <label mode="any">
              If set to true, the held value will be translated.
              This property cannot be an EL expression, it will only resolve literal
              values 'true' or 'false'. Defaults to false. Available since 5.5.
            </label>
          </helpLabels>
          <fields>
            <field>localize</field>
          </fields>
          <widgetModes>
            <mode value="edit_demo_preview">hidden</mode>
          </widgetModes>
        </widget>
    
        <widget name="accesskey" type="text">
          <categories>
            <category>widgetTypeConf</category>
          </categories>
          <labels>
            <label mode="any">Access key</label>
          </labels>
          <fields>
            <field>accesskey</field>
          </fields>
        </widget>
    
        <widget name="alt" type="text">
          <categories>
            <category>widgetTypeConf</category>
          </categories>
          <labels>
            <label mode="any">Alt</label>
          </labels>
          <fields>
            <field>alt</field>
          </fields>
        </widget>
    
        <widget name="dir" type="selectOneListbox">
          <categories>
            <category>widgetTypeConf</category>
          </categories>
          <labels>
            <label mode="any">Direction</label>
          </labels>
          <fields>
            <field>dir</field>
          </fields>
          <selectOptions>
            <option itemLabel="" itemValue=""/>
            <option itemLabel="Left to right" itemValue="LTR"/>
            <option itemLabel="Right to left" itemValue="RTL"/>
          </selectOptions>
        </widget>
    
        <widget name="placeholder" type="text">
          <categories>
            <category>widgetTypeConf</category>
          </categories>
          <labels>
            <label mode="any">Placeholder</label>
          </labels>
          <helpLabels>
            <label mode="any">
              String representing a short hint (a word or short
              phrase)
              intended to aid the user with data entry.
            </label>
          </helpLabels>
          <fields>
            <field>placeholder</field>
          </fields>
        </widget>
    
        <widget name="disabled" type="checkbox">
          <categories>
            <category>widgetTypeConf</category>
          </categories>
          <labels>
            <label mode="any">Disabled</label>
          </labels>
          <fields>
            <field>disabled</field>
          </fields>
        </widget>
    
        <widget name="immediate" type="checkbox">
          <categories>
            <category>widgetTypeConf</category>
          </categories>
          <labels>
            <label mode="any">Immediate</label>
          </labels>
          <fields>
            <field>immediate</field>
          </fields>
          <widgetModes>
            <mode value="any">hidden</mode>
            <mode value="view_reference">view</mode>
          </widgetModes>
        </widget>
    
        <widget name="lang" type="text">
          <categories>
            <category>widgetTypeConf</category>
          </categories>
          <labels>
            <label mode="any">Lang</label>
          </labels>
          <fields>
            <field>lang</field>
          </fields>
        </widget>
    
        <widget name="maxlength" type="int">
          <categories>
            <category>widgetTypeConf</category>
          </categories>
          <labels>
            <label mode="any">Max length</label>
          </labels>
          <fields>
            <field>maxlength</field>
          </fields>
        </widget>
    
        <widget name="required" type="checkbox">
          <categories>
            <category>widgetTypeConf</category>
          </categories>
          <labels>
            <label mode="any">Required</label>
          </labels>
          <fields>
            <field>required</field>
          </fields>
        </widget>
    
        <widget name="size" type="int">
          <categories>
            <category>widgetTypeConf</category>
          </categories>
          <labels>
            <label mode="any">Size</label>
          </labels>
          <fields>
            <field>size</field>
          </fields>
          <controls mode="any">
            <control name="deprecatedVersion">6.0</control>
            <control name="deprecatedDescription">Size must now be set in css, not with the size attribute</control>
          </controls>
        </widget>
    
        <widget name="validator" type="text">
          <categories>
            <category>widgetTypeConf</category>
          </categories>
          <labels>
            <label mode="any">Validator</label>
          </labels>
          <fields>
            <field>validator</field>
          </fields>
        </widget>
    
        <widget name="valueChangeListener" type="text">
          <categories>
            <category>widgetTypeConf</category>
          </categories>
          <labels>
            <label mode="any">Value change listener</label>
          </labels>
          <fields>
            <field>valueChangeListener</field>
          </fields>
        </widget>
    
        <widget name="redisplay" type="checkbox">
          <categories>
            <category>widgetTypeConf</category>
          </categories>
          <labels>
            <label mode="any">Redisplay</label>
          </labels>
          <fields>
            <field>redisplay</field>
          </fields>
        </widget>
    
        <widget name="textarea_cols" type="int">
          <categories>
            <category>widgetTypeConf</category>
          </categories>
          <labels>
            <label mode="any">Number of columns</label>
          </labels>
          <fields>
            <field>cols</field>
          </fields>
        </widget>
    
        <widget name="textarea_rows" type="int">
          <categories>
            <category>widgetTypeConf</category>
          </categories>
          <labels>
            <label mode="any">Number of rows</label>
          </labels>
          <fields>
            <field>rows</field>
          </fields>
        </widget>
    
        <widget name="datetime_pattern" type="text">
          <categories>
            <category>widgetTypeConf</category>
          </categories>
          <labels>
            <label mode="any">Pattern</label>
          </labels>
          <helpLabels>
            <label mode="any">
              String pattern for the date and time, as described by
              the java.text.SimpleDateFormat class, and as used in the standard
              DateTimeConverter. Default value is "MMM d, yyyy". Sample value:
              "#{nxu:basicDateFormatter()}" or "#{nxu:basicDateAndTimeFormatter()}".
            </label>
          </helpLabels>
          <fields>
            <field>pattern</field>
          </fields>
        </widget>
    
        <widget name="datetime_timeZone" type="text">
          <categories>
            <category>widgetTypeConf</category>
          </categories>
          <labels>
            <label mode="any">Time zone</label>
          </labels>
          <helpLabels>
            <label mode="any">
              String timeZone ID. The server time zone is
              used if not
              set.
            </label>
          </helpLabels>
          <fields>
            <field>timeZone</field>
          </fields>
        </widget>
    
        <widget name="datetime_format" type="text">
          <categories>
            <category>widgetTypeConf</category>
          </categories>
          <labels>
            <label mode="any">Format</label>
          </labels>
          <helpLabels>
            <label mode="any">
              String format for the date and time, as described by
              the java.text.SimpleDateFormat class, and as used in the standard
              DateTimeConverter. Default value is "MMM d, yyyy". Sample value:
              "#{nxu:basicDateFormatter()}" or "#{nxu:basicDateAndTimeFormatter()}".
            </label>
          </helpLabels>
          <fields>
            <field>format</field>
          </fields>
        </widget>
    
        <widget name="datetime_locale" type="selectOneListbox">
          <categories>
            <category>widgetTypeConf</category>
          </categories>
          <labels>
            <label mode="any">Locale</label>
          </labels>
          <helpLabels>
            <label mode="any">
              String representing the locale to use for
              the calendar.
              Current locale is used if not set.
            </label>
          </helpLabels>
          <fields>
            <field>locale</field>
          </fields>
          <selectOptions>
            <option itemLabel="" itemValue=""/>
            <option itemLabel="Catalan" itemValue="ca"/>
            <option itemLabel="Chinese" itemValue="cn"/>
            <option itemLabel="Czech" itemValue="cz"/>
            <option itemLabel="Deutsch" itemValue="de"/>
            <option itemLabel="English" itemValue="en"/>
            <option itemLabel="Spanish" itemValue="es"/>
            <option itemLabel="French" itemValue="fr"/>
            <option itemLabel="Italiano" itemValue="it"/>
            <option itemLabel="Japanese" itemValue="jp"/>
            <option itemLabel="Nederlands" itemValue="nl"/>
            <option itemLabel="Polish" itemValue="pl"/>
            <option itemLabel="Portuguese" itemValue="pt"/>
            <option itemLabel="Romanian" itemValue="ro"/>
            <option itemLabel="Russian" itemValue="ru"/>
            <option itemLabel="svenska" itemValue="sv"/>
          </selectOptions>
        </widget>
    
        <widget name="datetime_timeZone" type="text">
          <categories>
            <category>widgetTypeConf</category>
          </categories>
          <labels>
            <label mode="any">Time zone</label>
          </labels>
          <helpLabels>
            <label mode="any">
              String timeZone ID. The server time zone is used if
              not set.
            </label>
          </helpLabels>
          <fields>
            <field>timeZone</field>
          </fields>
        </widget>
    
        <widget name="datetime_triggerImg" type="text">
          <categories>
            <category>widgetTypeConf</category>
          </categories>
          <labels>
            <label mode="any">Trigger image</label>
          </labels>
          <helpLabels>
            <label mode="any">
              Image path to use for the trigger. Available since
              5.4.
            </label>
          </helpLabels>
          <fields>
            <field>triggerImg</field>
          </fields>
        </widget>
    
        <widget name="datetime_triggerLabel" type="text">
          <categories>
            <category>widgetTypeConf</category>
          </categories>
          <labels>
            <label mode="any">Trigger label</label>
          </labels>
          <helpLabels>
            <label mode="any">
              Label to display on the trigger image. Defaults to
              "...".
            </label>
          </helpLabels>
          <fields>
            <field>triggerLabel</field>
          </fields>
        </widget>
    
        <widget name="datetime_triggerStyleClass" type="text">
          <categories>
            <category>widgetTypeConf</category>
          </categories>
          <labels>
            <label mode="any">Trigger style class</label>
          </labels>
          <helpLabels>
            <label mode="any">
              Style class to set on the trigger button tag, defaults
              to 'calendarTrigger'.
            </label>
          </helpLabels>
          <fields>
            <field>triggerStyleClass</field>
          </fields>
        </widget>
    
        <widget name="file_downloadLabel" type="text">
          <categories>
            <category>widgetTypeConf</category>
          </categories>
          <labels>
            <label mode="any">Download label</label>
          </labels>
          <helpLabels>
            <label mode="any">
              Value binding that will be used as the download link
              value, and will attempt to be translated.
            </label>
          </helpLabels>
          <fields>
            <field>downloadLabel</field>
          </fields>
        </widget>
    
        <widget name="file_iconRendered" type="selectOneListbox">
          <categories>
            <category>widgetTypeConf</category>
          </categories>
          <labels>
            <label mode="any">Icon rendered</label>
          </labels>
          <helpLabels>
            <label mode="any">
              Boolean flag indicating whether or not the file icon
              should be rendered. Defaults to true.
            </label>
          </helpLabels>
          <fields>
            <field>iconRendered</field>
          </fields>
          <selectOptions>
            <option itemLabel="Yes (default value)" itemValue="true"/>
            <option itemLabel="No" itemValue="false"/>
          </selectOptions>
        </widget>
    
        <widget name="htmltext_disableHtmlInit" type="checkbox">
          <categories>
            <category>widgetTypeConf</category>
          </categories>
          <labels>
            <label mode="any">Disable HTML init</label>
          </labels>
          <helpLabels>
            <label mode="any">
              If set to true, the default display will be
              the text
              display
              (not html editor). Available since 5.3.1.
            </label>
          </helpLabels>
          <fields>
            <field>disableHtmlInit</field>
          </fields>
          <widgetModes>
            <mode value="any">hidden</mode>
            <mode value="view_reference">view</mode>
          </widgetModes>
        </widget>
    
        <widget name="htmltext_width" type="text">
          <categories>
            <category>widgetTypeConf</category>
          </categories>
          <labels>
            <label mode="any">Width</label>
          </labels>
          <helpLabels>
            <label mode="any">
              The textarea width. Defaults to "640".
              Give the exact
              size in pixels or percentage.
            </label>
          </helpLabels>
          <fields>
            <field>width</field>
          </fields>
        </widget>
    
        <widget name="htmltext_height" type="text">
          <categories>
            <category>widgetTypeConf</category>
          </categories>
          <labels>
            <label mode="any">Height</label>
          </labels>
          <helpLabels>
            <label mode="any">
              The textarea height. Defaults to "400".
              Give the exact
              size in pixels or percentage.
            </label>
          </helpLabels>
          <fields>
            <field>height</field>
          </fields>
        </widget>
    
        <widget name="htmltext_editorSelector" type="text">
          <categories>
            <category>widgetTypeConf</category>
          </categories>
          <labels>
            <label mode="any">Editor selector</label>
          </labels>
          <helpLabels>
            <label mode="any">
              The class to use to identify text areas to turn into
              html editors. Defaults to "mceEditor". See the editor_selector option
              in TinyMCE
              (http://wiki.moxiecode.com/index.php/TinyMCE:Configuration/editor_selector).
            </label>
          </helpLabels>
          <fields>
            <field>editorSelector</field>
          </fields>
          <widgetModes>
            <mode value="any">hidden</mode>
            <mode value="view_reference">view</mode>
          </widgetModes>
        </widget>
    
        <widget name="htmltext_configuration" type="textarea">
          <categories>
            <category>widgetTypeConf</category>
          </categories>
          <labels>
            <label mode="any">JSON configuration</label>
          </labels>
          <helpLabels>
            <label mode="any">
              JSON configuration map for TinyMCE initialization, that will be merged
              with default configuration. Available since 8.1.
              Example: {"toolbar4": "paste"}
            </label>
          </helpLabels>
          <fields>
            <field>configuration</field>
          </fields>
        </widget>
    
        <widget name="directoryName" type="selectOneResource">
          <categories>
            <category>widgetTypeConf</category>
          </categories>
          <labels>
            <label mode="any">Vocabulary</label>
          </labels>
          <fields>
            <field>directoryName</field>
          </fields>
          <widgetModes>
            <mode value="edit_demo_preview">hidden</mode>
          </widgetModes>
          <properties mode="any">
            <property name="resourceName">vocabularies</property>
          </properties>
          <properties widgetMode="any">
            <property name="required">true</property>
          </properties>
        </widget>
    
        <widget name="directoryNameDemoPreview" type="text">
          <categories>
            <category>widgetTypeConf</category>
          </categories>
          <labels>
            <label mode="any">Vocabulary</label>
          </labels>
          <fields>
            <field>directoryName</field>
          </fields>
          <widgetModes>
            <mode value="any">hidden</mode>
            <mode value="edit_demo_preview">view</mode>
          </widgetModes>
          <properties widgetMode="any">
            <property name="required">true</property>
          </properties>
        </widget>
    
        <widget name="directory_localize" type="checkbox">
          <categories>
            <category>widgetTypeConf</category>
          </categories>
          <labels>
            <label mode="any">Localize</label>
          </labels>
          <helpLabels>
            <label mode="any">
              Activate localization of vocabulary labels. Labels are
              translated as usual picking values in messages*.properties files.
              Database localization should also be activated if localized labels
              are provided by the vocabulary itself.
            </label>
          </helpLabels>
          <fields>
            <field>localize</field>
          </fields>
          <widgetModes>
            <mode value="edit_demo_preview">hidden</mode>
          </widgetModes>
        </widget>
    
        <widget name="directory_dbl10n" type="checkbox">
          <categories>
            <category>widgetTypeConf</category>
          </categories>
          <labels>
            <label mode="any">Activate database localization</label>
          </labels>
          <helpLabels>
            <label mode="any">
              Activate retrieval of localized labels in the
              vocabulary database, when translations are held by the directory
              itself, in fields with a label_[lang] pattern, and defaulting to
              label_en. Available since 6.0.
            </label>
          </helpLabels>
          <fields>
            <field>dbl10n</field>
          </fields>
          <widgetModes>
            <mode value="edit_demo_preview">hidden</mode>
          </widgetModes>
        </widget>
    
        <widget name="directory_displayIdAndLabel" type="checkbox">
          <categories>
            <category>widgetTypeConf</category>
          </categories>
          <labels>
            <label mode="any">Display id and label</label>
          </labels>
          <fields>
            <field>displayIdAndLabel</field>
          </fields>
        </widget>
    
        <widget name="directory_style" type="text">
          <categories>
            <category>widgetTypeConf</category>
          </categories>
          <labels>
            <label mode="any">Style</label>
          </labels>
          <fields>
            <field>style</field>
          </fields>
        </widget>
    
        <widget name="directory_cssStyle" type="text">
          <categories>
            <category>widgetTypeConf</category>
          </categories>
          <labels>
            <label mode="any">Style</label>
          </labels>
          <fields>
            <field>cssStyle</field>
          </fields>
        </widget>
    
        <widget name="directory_cssStyleClass" type="text">
          <categories>
            <category>widgetTypeConf</category>
          </categories>
          <labels>
            <label mode="any">Style class</label>
          </labels>
          <fields>
            <field>cssStyleClass</field>
          </fields>
        </widget>
    
        <widget name="directory_styleClass" type="text">
          <categories>
            <category>widgetTypeConf</category>
          </categories>
          <labels>
            <label mode="any">Style class</label>
          </labels>
          <fields>
            <field>styleClass</field>
          </fields>
        </widget>
    
        <widget name="directory_displayObsoleteEntries" type="checkbox">
          <categories>
            <category>widgetTypeConf</category>
          </categories>
          <labels>
            <label mode="any">Display obsolete entries</label>
          </labels>
          <fields>
            <field>displayObsoleteEntries</field>
          </fields>
        </widget>
    
        <widget name="directory_notDisplayDefaultOption" type="checkbox">
          <categories>
            <category>widgetTypeConf</category>
          </categories>
          <labels>
            <label mode="any">Do not display the default option</label>
          </labels>
          <helpLabels>
            <label mode="any">
              True if there should not be displayed a "Please select
              a value" option
            </label>
          </helpLabels>
          <fields>
            <field>notDisplayDefaultOption</field>
          </fields>
        </widget>
    
        <widget name="directory_ordering" type="selectOneListbox">
          <categories>
            <category>widgetTypeConf</category>
          </categories>
          <labels>
            <label mode="any">Sort criterion</label>
          </labels>
          <fields>
            <field>ordering</field>
          </fields>
          <selectOptions>
            <option itemLabel="Label (default)" itemValue="label"/>
            <option itemLabel="Ordering" itemValue="ordering"/>
            <option itemLabel="Id" itemValue="id"/>
          </selectOptions>
        </widget>
    
        <widget name="complex_subwidgets_display" type="selectOneListbox">
          <categories>
            <category>widgetTypeConf</category>
          </categories>
          <labels>
            <label mode="any">Display</label>
          </labels>
          <helpLabels>
            <label mode="any">
              The display attribute controls the rendering of
              subwidgets. Available since 5.4.2.
            </label>
          </helpLabels>
          <fields>
            <field>display</field>
          </fields>
          <selectOptions>
            <!-- block-like renderings available since 5.6 -->
            <option itemLabel="Block (label on the left, default)" itemValue="block_left"/>
            <option itemLabel="Block (label on top)" itemValue="block_top"/>
            <option itemLabel="Table" itemValue="table"/>
            <option itemLabel="In line" itemValue="inline"/>
          </selectOptions>
        </widget>
    
        <widget name="list_subwidgets_display" type="selectOneListbox">
          <categories>
            <category>widgetTypeConf</category>
          </categories>
          <labels>
            <label mode="any">Display</label>
          </labels>
          <helpLabels>
            <label mode="any">
              The display attribute controls the rendering of
              subwidgets. Available since 5.4.2.
            </label>
          </helpLabels>
          <fields>
            <field>display</field>
          </fields>
          <selectOptions>
            <option itemLabel="Block (label on the left, default)" itemValue="block_left"/>
            <option itemLabel="Block (label on top)" itemValue="block_top"/>
            <option itemLabel="Table" itemValue="table"/>
            <option itemLabel="In line" itemValue="inline"/>
          </selectOptions>
        </widget>
    
        <widget name="subwidgets_hideSubLabels" type="checkbox">
          <categories>
            <category>widgetTypeConf</category>
          </categories>
          <labels>
            <label mode="any">Hide subwidgets labels</label>
          </labels>
          <helpLabels>
            <label mode="any">
              This attribute controls the rendering of subwidgets
              labels. Available since 5.4.2.
            </label>
          </helpLabels>
          <fields>
            <field>hideSubLabels</field>
          </fields>
        </widget>
    
        <widget name="list_diff" type="checkbox">
          <categories>
            <category>widgetTypeConf</category>
          </categories>
          <labels>
            <label mode="any">Diff</label>
          </labels>
          <fields>
            <field>diff</field>
          </fields>
        </widget>
    
        <widget name="list_orderable" type="checkbox">
          <categories>
            <category>widgetTypeConf</category>
          </categories>
          <labels>
            <label mode="any">Orderable</label>
          </labels>
          <helpLabels>
            <label mode="any">
              This attribute controls the possibility to order the
              items. Available since 5.5.
            </label>
          </helpLabels>
          <fields>
            <field>orderable</field>
          </fields>
        </widget>
    
        <widget name="list_hideDeleteButton" type="checkbox">
          <categories>
            <category>widgetTypeConf</category>
          </categories>
          <labels>
            <label mode="any">Hide delete button</label>
          </labels>
          <helpLabels>
            <label mode="any">
              This attribute controls the possibility to remove the
              'delete' button for each list item. Available since 5.6.
            </label>
          </helpLabels>
          <fields>
            <field>hideDeleteButton</field>
          </fields>
        </widget>
    
        <widget name="list_hideAddButton" type="checkbox">
          <categories>
            <category>widgetTypeConf</category>
          </categories>
          <labels>
            <label mode="any">Hide add button</label>
          </labels>
          <helpLabels>
            <label mode="any">
              This attribute controls the possibility to remove the
              'add' button to add an item to the list. Available since 5.6.
            </label>
          </helpLabels>
          <fields>
            <field>hideAddButton</field>
          </fields>
        </widget>
    
        <widget name="list_listTemplateItem" type="text">
          <categories>
            <category>widgetTypeConf</category>
          </categories>
          <labels>
            <label mode="any">List template item</label>
          </labels>
          <helpLabels>
            <label mode="any">
              This attribute enables to control the template for
              each item that needs to be added to the list. In most common cases,
              this value is deduced from the field definition, using the expression:
              #{nxd:propertyDefaultValue(widget.fieldDefinitions[0].propertyName)}.
              This needs to be adapted for subwidgets (when handling lists of lists
              for instance) or when using this widget on another object that a
              DocumentModel property. For instance, for a subwidget, you can use:
              #{nxd:propertyDefaultValue('mySchema:listOfLists/stringListItem')}.
              Available since 5.6.
            </label>
          </helpLabels>
          <fields>
            <field>listTemplateItem</field>
          </fields>
        </widget>
    
        <widget name="list_removeEmpty" type="checkbox">
          <categories>
            <category>widgetTypeConf</category>
          </categories>
          <labels>
            <label mode="any">Remove empty item(s)</label>
          </labels>
          <helpLabels>
            <label mode="any">
              This boolean attribute allows to remove null items from the list on edit.
              Items are only removed when there are changes to the list items.
              Available since 7.3.
            </label>
          </helpLabels>
          <fields>
            <field>removeEmpty</field>
          </fields>
        </widget>
    
        <widget name="list_number" type="int">
          <categories>
            <category>widgetTypeConf</category>
          </categories>
          <labels>
            <label mode="any">Number of open item(s)</label>
          </labels>
          <helpLabels>
            <label mode="any">
              This integer attribute allows to set the number of new items that should
              be opened when displaying the list widget.
              Available since 7.3.
            </label>
          </helpLabels>
          <fields>
            <field>number</field>
          </fields>
        </widget>
    
        <widget name="list_addLabel" type="text">
          <categories>
            <category>widgetTypeConf</category>
          </categories>
          <labels>
            <label mode="any">'Add' action label</label>
          </labels>
          <helpLabels>
            <label mode="any">
              This string attribute allows to configure the label used for
              the 'add' action on the list widget. It is translated if the widget
              is marked as translated.
              Available since 7.3.
            </label>
          </helpLabels>
          <fields>
            <field>addLabel</field>
          </fields>
        </widget>
    
        <widget name="container_subwidgets_display" type="selectOneListbox">
          <categories>
            <category>widgetTypeConf</category>
          </categories>
          <labels>
            <label mode="any">Display</label>
          </labels>
          <helpLabels>
            <label mode="any">
              The display attribute controls the rendering of
              subwidgets.
            </label>
          </helpLabels>
          <fields>
            <field>display</field>
          </fields>
          <selectOptions>
            <option itemLabel="Block (label on the left, default)" itemValue="block_left"/>
            <option itemLabel="Block (label on top)" itemValue="block_top"/>
            <option itemLabel="Table" itemValue="table"/>
            <option itemLabel="In line" itemValue="inline"/>
          </selectOptions>
        </widget>
    
        <widget name="container_subwidgets_hideSubLabels" type="checkbox">
          <categories>
            <category>widgetTypeConf</category>
          </categories>
          <labels>
            <label mode="any">Hide subwidgets labels</label>
          </labels>
          <helpLabels>
            <label mode="any">
              This attribute controls the rendering of subwidgets
              labels.
            </label>
          </helpLabels>
          <fields>
            <field>hideSubLabels</field>
          </fields>
        </widget>
    
        <widget name="widgetsDisplay" type="selectOneListbox">
          <categories>
            <category>widgetTypeConf</category>
          </categories>
          <labels>
            <label mode="any">Widgets Display</label>
          </labels>
          <helpLabels>
            <label mode="any">
              The display attribute controls the rendering of
              widgets.
            </label>
          </helpLabels>
          <fields>
            <field>widgetsDisplay</field>
          </fields>
          <selectOptions>
            <option itemLabel="Label on the left (default)" itemValue="label_left"/>
            <option itemLabel="Label on top" itemValue="label_top"/>
            <option itemLabel="No Label" itemValue="no_label"/>
          </selectOptions>
        </widget>
    
        <widget name="select_layout" type="selectOneListbox">
          <categories>
            <category>widgetTypeConf</category>
          </categories>
          <labels>
            <label mode="any">Layout</label>
          </labels>
          <helpLabels>
            <label mode="any">
              The select layout binding.
            </label>
          </helpLabels>
          <fields>
            <field>layout</field>
          </fields>
          <selectOptions>
            <option itemLabel="Line direction (default)" itemValue=""/>
            <option itemLabel="Page direction" itemValue="pageDirection"/>
            <option itemLabel="Line direction" itemValue="lineDirection"/>
          </selectOptions>
        </widget>
    
        <widget name="select_layout_page_default" type="selectOneListbox">
          <categories>
            <category>widgetTypeConf</category>
          </categories>
          <labels>
            <label mode="any">Layout</label>
          </labels>
          <helpLabels>
            <label mode="any">
              The select layout binding.
            </label>
          </helpLabels>
          <fields>
            <field>layout</field>
          </fields>
          <selectOptions>
            <option itemLabel="Page direction (default)" itemValue=""/>
            <option itemLabel="Page direction" itemValue="pageDirection"/>
            <option itemLabel="Line direction" itemValue="lineDirection"/>
          </selectOptions>
        </widget>
    
        <widget name="select_selectOptions" type="text">
          <categories>
            <category>widgetTypeConf</category>
          </categories>
          <labels>
            <label mode="any">Select Options</label>
          </labels>
          <helpLabels>
            <label mode="any">
              The select options binding.
            </label>
          </helpLabels>
          <fields>
            <field>selectOptions</field>
          </fields>
          <widgetModes>
            <mode value="any">hidden</mode>
            <mode value="edit_demo_preview">hidden</mode>
            <mode value="view_reference">view</mode>
          </widgetModes>
        </widget>
    
        <widget name="select_var" type="text">
          <categories>
            <category>widgetTypeConf</category>
          </categories>
          <labels>
            <label mode="any">Variable</label>
          </labels>
          <helpLabels>
            <label mode="any">
              The variable name for select options expressions
              resolution. Usually defaults to 'item'.
            </label>
          </helpLabels>
          <fields>
            <field>var</field>
          </fields>
        </widget>
    
        <widget name="select_itemLabel" type="text">
          <categories>
            <category>widgetTypeConf</category>
          </categories>
          <labels>
            <label mode="any">Item label</label>
          </labels>
          <helpLabels>
            <label mode="any">
              Expression referencing the variable name to display
              the option label.
            </label>
          </helpLabels>
          <fields>
            <field>itemLabel</field>
          </fields>
        </widget>
    
        <widget name="select_itemValue" type="text">
          <categories>
            <category>widgetTypeConf</category>
          </categories>
          <labels>
            <label mode="any">Item label</label>
          </labels>
          <helpLabels>
            <label mode="any">
              Expression referencing the variable name to display
              the option id.
            </label>
          </helpLabels>
          <fields>
            <field>itemValue</field>
          </fields>
        </widget>
    
      </extension>
  • nuxeo-platform-ui-select2-2023.20.15.jar /OSGI-INF/widgettypes-contrib.xml
    <extension point="widgets" target="org.nuxeo.ecm.platform.forms.layout.LayoutStore">
    
        <widget name="select2_idProperty" type="text">
          <categories>
            <category>widgetTypeConf</category>
          </categories>
          <labels>
            <label mode="any">Id Property</label>
          </labels>
          <helpLabels>
            <label mode="any">
              Name of the Document property that should be
              used to
              define the ID of entry.
              If unset Document.uid will be
              used, otherwise
              Document.properties['idProperty'].
            </label>
          </helpLabels>
          <fields>
            <field>idProperty</field>
          </fields>
        </widget>
    
        <widget name="select2_idFunction" type="text">
          <categories>
            <category>widgetTypeConf</category>
          </categories>
          <labels>
            <label mode="any">Id Function</label>
          </labels>
          <helpLabels>
            <label mode="any">
              Name of the JavaScript function that will be called by
              select2 to get the id from
              the suggested objects. The target function should
              take as input the
              javascript object as returned by Automation and should
              return the id to be
              submitted. Use the "Inline Javascript" property field
              to define your own
              function.
            </label>
          </helpLabels>
          <fields>
            <field>idFunction</field>
          </fields>
        </widget>
    
        <widget name="select2_labelProperty" type="text">
          <categories>
            <category>widgetTypeConf</category>
          </categories>
          <labels>
            <label mode="any">Label Property</label>
          </labels>
          <helpLabels>
            <label mode="any">
              Name of the Document property that should be
              used to
              define the Label of entry.
              If unset Document.title
              will be used,
              otherwise
              Document.properties['labelProperty'].
            </label>
          </helpLabels>
          <fields>
            <field>labelProperty</field>
          </fields>
        </widget>
    
    
        <widget name="select2_operationId" type="text">
          <categories>
            <category>widgetTypeConf</category>
          </categories>
          <labels>
            <label mode="any">Operation Id</label>
          </labels>
          <helpLabels>
            <label mode="any">
              ID of the Automation Operation that will be
              used to
              fetch the suggestions.
              If unset,
              Repository.PageProvider (or Document.PageProvider for Nuxeo Platform 6.0) will be used.
            </label>
          </helpLabels>
          <fields>
            <field>operationId</field>
          </fields>
        </widget>
    
        <widget name="select2_initOperationId" type="text">
          <categories>
            <category>widgetTypeConf</category>
          </categories>
          <labels>
            <label mode="any">Init Operation Id</label>
          </labels>
          <helpLabels>
            <label mode="any">
              ID of the Automation Operation that will be
              used to
              fetch the initial Document from the stored value..
              If unsed, simple uid
              resolution will be used.
            </label>
          </helpLabels>
          <fields>
            <field>initOperationId</field>
          </fields>
        </widget>
    
      </extension>
  • nuxeo-platform-webapp-base-2023.20.15.jar /OSGI-INF/layouts-contrib.xml
    <extension point="widgets" target="org.nuxeo.ecm.platform.forms.layout.LayoutStore">
    
        <widget name="displayObsoleteEntries" type="checkbox">
          <categories>
            <category>widgetTypeConf</category>
          </categories>
          <labels>
            <label mode="any">Display obsolete entries</label>
          </labels>
          <fields>
            <field>displayObsoleteEntries</field>
          </fields>
        </widget>
    
        <widget name="select2_directory_name" type="selectOneResource">
          <categories>
            <category>widgetTypeConf</category>
          </categories>
          <labels>
            <label mode="any">Directory Name</label>
          </labels>
          <helpLabels>
            <label mode="any">
              Name of the directory
            </label>
          </helpLabels>
          <widgetModes>
            <mode value="edit_demo_preview">hidden</mode>
          </widgetModes>
          <fields>
            <field>directoryName</field>
          </fields>
          <properties widgetMode="any">
            <property name="required">true</property>
          </properties>
          <properties mode="any">
            <property name="resourceName">vocabularies</property>
            <property name="includel10nDirectories">true</property>
          </properties>
        </widget>
    
        <widget name="select2_directory_fetch_mode" type="selectOneListbox">
          <categories>
            <category>widgetTypeConf</category>
          </categories>
          <labels>
            <label mode="any">Fetch Mode</label>
          </labels>
          <helpLabels>
            <label mode="any">
              This attribute controls the fetch mode for directory entries.
              Directory entries can either be fetched if they start with the
              search term or if thery contain the search term.
              Available since 5.9.2.
            </label>
          </helpLabels>
          <fields>
            <field>contains</field>
          </fields>
          <selectOptions>
            <option itemLabel="Starts with (default)" itemValue="false"/>
            <option itemLabel="Contains" itemValue="true"/>
          </selectOptions>
        </widget>
    
        <widget name="select2_dbl10n" type="checkbox">
          <categories>
            <category>widgetTypeConf</category>
          </categories>
          <labels>
            <label mode="any">Activate database localization</label>
          </labels>
          <helpLabels>
            <label mode="any">
              Activate retrieval of localized labels in the
              vocabulary database, when translations are held by the directory
              itself, in fields with a label_[lang] pattern, and defaulting to
              label_en. Available since 6.0.
            </label>
          </helpLabels>
          <fields>
            <field>dbl10n</field>
          </fields>
        </widget>
    
        <widget name="select2_canSelectParent" type="checkbox">
          <categories>
            <category>widgetTypeConf</category>
          </categories>
          <labels>
            <label mode="any">Can select parent</label>
          </labels>
          <helpLabels>
            <label mode="any">
              Check this option to allow selection of
              intermediate
              groups.
            </label>
          </helpLabels>
          <fields>
            <field>canSelectParent</field>
          </fields>
        </widget>
    
        <widget name="select2_filterParent" type="checkbox">
          <categories>
            <category>widgetTypeConf</category>
          </categories>
          <labels>
            <label mode="any">Filter parent</label>
          </labels>
          <helpLabels>
            <label mode="any">
              Check this option to apply filter on
              intermediate
              groups.
            </label>
          </helpLabels>
          <fields>
            <field>filterParent</field>
          </fields>
        </widget>
    
        <widget name="select2_dropdownOnArrow" type="checkbox">
          <categories>
            <category>widgetTypeConf</category>
          </categories>
          <labels>
            <label mode="any">Dropdown on Arrow </label>
          </labels>
          <helpLabels>
            <label mode="any">
              Check this option to dropdown the suggestions only when clicking the arrow on
              the right of the single suggestion widget. By default the suggestions are
              dropped down wherever you click.
            </label>
          </helpLabels>
          <fields>
            <field>dropdownOnArrow</field>
          </fields>
        </widget>
    
        <widget name="select2_separator" type="text">
          <categories>
            <category>widgetTypeConf</category>
          </categories>
          <labels>
            <label mode="any">Select2 separator</label>
          </labels>
          <helpLabels>
            <label mode="any">
              Separator character or string used to delimit ids
              in value attribute of the multi-valued selects.
              The default delimiter is the , character.
            </label>
          </helpLabels>
          <widgetModes>
            <mode value="any">hidden</mode>
            <mode value="view_reference">view</mode>
          </widgetModes>
          <fields>
            <field>separator</field>
          </fields>
        </widget>
    
        <widget name="select2_frequency" type="text">
          <categories>
            <category>widgetTypeConf</category>
          </categories>
          <labels>
            <label mode="any">Select2 frequency</label>
          </labels>
          <helpLabels>
            <label mode="any">
              Delay (in milliseconds) before sending a request
              to the server after a character is typed.
              Default value is 300ms.
            </label>
          </helpLabels>
          <fields>
            <field>frequency</field>
          </fields>
        </widget>
    
        <widget name="select2_closeOnSelect" type="text">
          <categories>
            <category>widgetTypeConf</category>
          </categories>
          <labels>
            <label mode="any">Select2 closeOnSelect</label>
          </labels>
          <helpLabels>
            <label mode="any">
             If set to false the dropdown is not closed after a selection is made,
             allowing for rapid selection of multiple items.
             By default this option is set to true.
            </label>
          </helpLabels>
          <fields>
            <field>closeOnSelect</field>
          </fields>
        </widget>
    
        <widget name="select2_directory_labelFieldName" type="text">
          <categories>
            <category>widgetTypeConf</category>
          </categories>
          <labels>
            <label mode="any">Label field name</label>
          </labels>
          <helpLabels>
            <label mode="any">
              Name of the Directory field that should be
              used to
              define the Label of entry.
              If not set 'label'
              will be
              used. In case of
              localization with a directory field for
              each supported language (see
              dbl10n option), by default
              fields with pattern like 'label_en',
              'label_fr' or
              'label_de' will
              be searched. You can customize looked up
              fields by
              specifying
              a pattern like
              'label_{lang}' where the part {lang}
              will be
              replaced with
              the current locale.
            </label>
          </helpLabels>
          <fields>
            <field>labelFieldName</field>
          </fields>
        </widget>
    
        <widget name="userSuggestionSearchType" type="selectOneListbox">
          <categories>
            <category>widgetTypeConf</category>
          </categories>
          <labels>
            <label mode="any">Search type</label>
          </labels>
          <fields>
            <field>userSuggestionSearchType</field>
          </fields>
          <selectOptions>
            <option itemLabel="Users and Groups" itemValue=""/>
            <option itemLabel="Users" itemValue="USER_TYPE"/>
            <option itemLabel="Groups" itemValue="GROUP_TYPE"/>
          </selectOptions>
        </widget>
    
        <widget name="userSuggestion_groupRestriction" type="text">
          <categories>
            <category>widgetTypeConf</category>
          </categories>
          <labels>
            <label mode="any">Group id restriction</label>
          </labels>
          <helpLabels>
            <label mode="any">
              Enter the id of a group to suggest only user from this
              group.
            </label>
          </helpLabels>
          <fields>
            <field>groupRestriction</field>
          </fields>
        </widget>
    
        <widget name="userSuggestion_prefixed" type="checkbox">
          <categories>
            <category>widgetTypeConf</category>
          </categories>
          <labels>
            <label mode="any">Use prefixed reference</label>
          </labels>
          <helpLabels>
            <label mode="any">
              Check this box if you want the references prefixed
              with "user:" or "group:".
            </label>
          </helpLabels>
          <fields>
            <field>prefixed</field>
          </fields>
        </widget>
    
        <widget name="userSuggestion_firstLabelField" type="text">
          <categories>
            <category>widgetTypeConf</category>
          </categories>
          <labels>
            <label mode="any">First label field</label>
          </labels>
          <helpLabels>
            <label mode="any">
              Field to use as the first label when displaying the
              selected user. Defaults to 'firstName'.
            </label>
          </helpLabels>
          <fields>
            <field>firstLabelField</field>
          </fields>
        </widget>
    
        <widget name="userSuggestion_secondLabelField" type="text">
          <categories>
            <category>widgetTypeConf</category>
          </categories>
          <labels>
            <label mode="any">Second label field</label>
          </labels>
          <helpLabels>
            <label mode="any">
              Field to use as the second label when displaying the
              selected user. Defaults to 'lastName'.
            </label>
          </helpLabels>
          <fields>
            <field>secondLabelField</field>
          </fields>
        </widget>
    
        <widget name="userSuggestion_thirdLabelField" type="text">
          <categories>
            <category>widgetTypeConf</category>
          </categories>
          <labels>
            <label mode="any">Third label field</label>
          </labels>
          <helpLabels>
            <label mode="any">
              Field to use as the third label when displaying the
              selected user. Defaults to 'email'. Available since 5.5.
            </label>
          </helpLabels>
          <fields>
            <field>thirdLabelField</field>
          </fields>
        </widget>
    
        <widget name="userSuggestion_hideFirstLabel" type="checkbox">
          <categories>
            <category>widgetTypeConf</category>
          </categories>
          <labels>
            <label mode="any">Hide first label</label>
          </labels>
          <helpLabels>
            <label mode="any">
              Boolean indicating if the first label should be
              hidden. Defaults to false.
            </label>
          </helpLabels>
          <fields>
            <field>hideFirstLabel</field>
          </fields>
        </widget>
    
        <widget name="userSuggestion_hideSecondLabel" type="checkbox">
          <categories>
            <category>widgetTypeConf</category>
          </categories>
          <labels>
            <label mode="any">Hide second label</label>
          </labels>
          <helpLabels>
            <label mode="any">
              Boolean indicating if the second label should be
              hidden.Defaults to false.
            </label>
          </helpLabels>
          <fields>
            <field>hideSecondLabel</field>
          </fields>
        </widget>
    
        <widget name="userSuggestion_hideThirdLabel" type="checkbox">
          <categories>
            <category>widgetTypeConf</category>
          </categories>
          <labels>
            <label mode="any">Hide third label</label>
          </labels>
          <helpLabels>
            <label mode="any">
              Boolean indicating if the third label should be
              hidden. Defaults to false. Available since 5.5.
            </label>
          </helpLabels>
          <fields>
            <field>hideThirdLabel</field>
          </fields>
        </widget>
    
        <widget name="userSuggestion_displayAction" type="selectOneListbox">
          <categories>
            <category>widgetTypeConf</category>
          </categories>
          <labels>
            <label mode="any">Display action</label>
          </labels>
          <helpLabels>
            <label mode="any">
              The display action to use when rendering the user or
              group. Can be 'nothing' to just display text only, 'view' to have a
              link going to the user or group view, or 'edit' to have a link going
              to the user or group edition. The 'edit' action assumes the widget is
              used in the Users and Groups management.
            </label>
          </helpLabels>
          <fields>
            <field>displayAction</field>
          </fields>
          <selectOptions>
            <option itemLabel="View" itemValue="view"/>
            <option itemLabel="Edit" itemValue="edit"/>
            <option itemLabel="Nothing" itemValue="nothing"/>
          </selectOptions>
        </widget>
    
        <widget name="userSuggestion_displayEmailInSuggestion" type="checkbox">
          <categories>
            <category>widgetTypeConf</category>
          </categories>
          <labels>
            <label mode="any">Display email for users</label>
          </labels>
          <helpLabels>
            <label mode="any">
              Boolean indicating if the email should be displayed
              for users. Defaults to false. Available since 5.5.
            </label>
          </helpLabels>
          <fields>
            <field>displayEmailInSuggestion</field>
          </fields>
        </widget>
    
        <widget name="userSuggestionMaxSearchResults" type="int">
          <categories>
            <category>widgetTypeConf</category>
          </categories>
          <labels>
            <label mode="any">Max search results</label>
          </labels>
          <helpLabels>
            <label mode="any">
              Number of maximum search results in the suggestion
              (defaults to 0 that means no limit).
            </label>
          </helpLabels>
          <fields>
            <field>userSuggestionMaxSearchResults</field>
          </fields>
        </widget>
    
        <widget name="suggestion_minChars" type="int">
          <categories>
            <category>widgetTypeConf</category>
          </categories>
          <labels>
            <label mode="any">Minimum characters</label>
          </labels>
          <helpLabels>
            <label mode="any">
              The minimal number of characters to type for the
              suggestion to be active. Defaults to 3.
            </label>
          </helpLabels>
          <fields>
            <field>minChars</field>
          </fields>
        </widget>
    
        <widget name="suggestion_resultLimit" type="int">
          <sinceVersion>8.2</sinceVersion>
          <categories>
            <category>widgetTypeConf</category>
          </categories>
          <labels>
            <label mode="any">Limit returned results</label>
          </labels>
          <helpLabels>
            <label mode="any">
              The maximal number of result returned by the suggestion.
              Defaults to unlimited.
            </label>
          </helpLabels>
          <fields>
            <field>limit</field>
          </fields>
        </widget>
    
        <widget name="userSuggestion_frequency" type="int">
          <categories>
            <category>widgetTypeConf</category>
          </categories>
          <labels>
            <label mode="any">Frequency</label>
          </labels>
          <helpLabels>
            <label mode="any">
              Delay (in seconds) before activating the suggestion
              pop-up. Default value is 0.
            </label>
          </helpLabels>
    
          <fields>
            <field>frequency</field>
          </fields>
        </widget>
    
        <widget name="userSuggestion_requestDelay" type="int">
          <categories>
            <category>widgetTypeConf</category>
          </categories>
          <labels>
            <label mode="any">Request delay</label>
          </labels>
          <helpLabels>
            <label mode="any">
              The requestDelay attribute specifies an amount of time
              in milliseconds for the request to wait in the queue before being sent
              to the server. If a similar request is added to the queue before the
              delay is over, the original request is removed from the queue and not
              sent.
            </label>
          </helpLabels>
          <fields>
            <field>requestDelay</field>
          </fields>
        </widget>
    
        <widget name="suggestion_width" type="text">
          <categories>
            <category>widgetTypeConf</category>
          </categories>
          <labels>
            <label mode="any">Width</label>
          </labels>
          <helpLabels>
            <label mode="any">The suggestion width.</label>
          </helpLabels>
          <fields>
            <field>width</field>
          </fields>
        </widget>
    
        <widget name="suggestion_helpLabel" type="text">
          <categories>
            <category>widgetTypeConf</category>
          </categories>
          <labels>
            <label mode="any">Help Label</label>
          </labels>
          <helpLabels>
            <label mode="any">
              The help label is displayed below the
              widget.
            </label>
          </helpLabels>
          <fields>
            <field>helpLabel</field>
          </fields>
        </widget>
    
        <widget name="select2_containerCssClass" type="text">
          <categories>
            <category>widgetTypeConf</category>
          </categories>
          <labels>
            <label mode="any">Container css class</label>
          </labels>
          <helpLabels>
            <label mode="any">
              Css class of the Select2 selection container
            </label>
          </helpLabels>
          <fields>
            <field>containerCssClass</field>
          </fields>
        </widget>
    
        <widget name="select2_dropdownCssClass" type="text">
          <categories>
            <category>widgetTypeConf</category>
          </categories>
          <labels>
            <label mode="any">Dropdown css class</label>
          </labels>
          <helpLabels>
            <label mode="any">
              Css class of the Select2 dropdown suggestion
            </label>
          </helpLabels>
          <fields>
            <field>dropdownCssClass</field>
          </fields>
        </widget>
    
        <widget name="select2_suggestionFormatter" type="text">
          <categories>
            <category>widgetTypeConf</category>
          </categories>
          <labels>
            <label mode="any">Suggestion Formatter</label>
          </labels>
          <helpLabels>
            <label mode="any">
              Name of the JavaScript function that
              will be
              called by select2 to do the formatting of the
              suggestedentries.
              The
              target function should take as input
              the javascript Document as
              returned by Automation and should
              return some Html.
              Use the "Inline Javascript" property field to define your own
              formatter.
            </label>
          </helpLabels>
          <fields>
            <field>suggestionFormatter</field>
          </fields>
        </widget>
    
        <widget name="select2_selectionFormatter" type="text">
          <categories>
            <category>widgetTypeConf</category>
          </categories>
          <labels>
            <label mode="any">Selection Formatter</label>
          </labels>
          <helpLabels>
            <label mode="any">
              Name of the JavaScript function that
              will be
              called by the widget to do the formatting of the
              selected entries.
              The
              target function should take as input
              the javascript Document as
              returned by Automation and should
              return some Html.
              Use the "Inline Javascript" property field to define your own
              formatter.
            </label>
          </helpLabels>
          <fields>
            <field>selectionFormatter</field>
          </fields>
        </widget>
    
        <widget name="select2_additionalParam" type="text">
          <categories>
            <category>widgetTypeConf</category>
          </categories>
          <labels>
            <label mode="any">Additional Operation Parameters</label>
          </labels>
          <helpLabels>
            <label mode="any">
              Name of the JavaScript function that
              will be
              called by select2 to pass additional parameters to
              the automation operation. See https://doc.nuxeo.com/x/iQhvAQ.
            </label>
          </helpLabels>
          <fields>
            <field>additionalOperationParameters</field>
          </fields>
        </widget>
    
        <widget name="select2_inlinejsDemoPreview" type="textarea">
          <categories>
            <category>widgetTypeConf</category>
          </categories>
          <labels>
            <label mode="any">Inline Javascript</label>
          </labels>
          <widgetModes>
            <mode value="any">hidden</mode>
            <mode value="edit_demo_preview">#{layout.mode}</mode>
          </widgetModes>
          <helpLabels>
            <label mode="any">
              Javascript to be injected in the page with
              the Widget.
              You can define here custom formatters
              referenced in "Selection
              Formatter" and
              "Suggestion Formatter" fields. Example:
              &lt;pre&gt;
              function myFormatter(entry) {
              var markup = entry.displayLabel;
              return markup;
              }
              &lt;/pre&gt; </label>
          </helpLabels>
          <fields>
            <field>inlinejs</field>
          </fields>
        </widget>
    
        <widget name="select2_inlinejs" type="codearea">
          <categories>
            <category>widgetTypeConf</category>
          </categories>
          <labels>
            <label mode="any">Inline Javascript</label>
          </labels>
          <widgetModes>
            <mode value="edit_demo_preview">hidden</mode>
          </widgetModes>
          <helpLabels>
            <label mode="any">
              Javascript to be injected in the page with
              the Widget.
              You can define here custom formatters
              referenced in "Selection
              Formatter" and
              "Suggestion Formatter" fields. Example:
              &lt;pre&gt;
              function myFormatter(entry) {
              var markup = entry.displayLabel;
              return markup;
              }
              &lt;/pre&gt; </label>
          </helpLabels>
          <fields>
            <field>inlinejs</field>
          </fields>
          <properties mode="any">
            <property name="language">javascript</property>
          </properties>
        </widget>
    
        <widget name="select2_directorySuggestion_canAddNewEntry" type="checkbox">
          <categories>
            <category>widgetTypeConf</category>
          </categories>
          <labels>
            <label mode="any">Can add new entry</label>
          </labels>
          <helpLabels>
            <label mode="any">
              Boolean stating if user should be able to add a new
              entry on the directory from this widget. Available since 5.9.1,
              defaults to "false".
            </label>
          </helpLabels>
          <fields>
            <field>canAddNewEntry</field>
          </fields>
        </widget>
    
        <widget name="select2_directorySuggestion_addNewEntryFilter" type="text">
          <categories>
            <category>widgetTypeConf</category>
          </categories>
          <labels>
            <label mode="any">Filter for adding a new entry</label>
          </labels>
          <helpLabels>
            <label mode="any">
              The action filter id used to check whether user should
              be presented the 'add new entry' action on the suggestion widget.
              The
              variable 'directoryName' is available in context for this filter
              evaluation. Available since 5.9.1, defaults to
              'canAddEntryFromSuggestDirectoryWidget'.
            </label>
          </helpLabels>
          <fields>
            <field>addNewEntryFilter</field>
          </fields>
        </widget>
    
        <widget name="documentSuggestion_tab" type="text">
          <categories>
            <category>widgetTypeConf</category>
          </categories>
          <labels>
            <label mode="any">Tab</label>
          </labels>
          <helpLabels>
            <label mode="any">
              The tab to select when clicking on the document link.
            </label>
          </helpLabels>
          <fields>
            <field>tab</field>
          </fields>
        </widget>
    
        <widget name="documentSuggestion_subTab" type="text">
          <categories>
            <category>widgetTypeConf</category>
          </categories>
          <labels>
            <label mode="any">Sub Tab</label>
          </labels>
          <helpLabels>
            <label mode="any">
              The sub tab to select when clicking on the document
              link.
            </label>
          </helpLabels>
          <fields>
            <field>subTab</field>
          </fields>
        </widget>
    
        <widget name="documentSuggestion_pageProviderName" type="text">
          <categories>
            <category>widgetTypeConf</category>
          </categories>
          <labels>
            <label mode="any">Document page provider name</label>
          </labels>
          <helpLabels>
            <label mode="any">
              The page provider that will be called to perform a
              search for the suggestion. It must accept one parameter that will be
              replaced by the suggestion input. Since 5.7, additional parameters set
              on the page provider definition will also be taken into account (but
              the suggestion input will still be used as the first implicit
              parameter). If no name is defined, a default page provider is used.
            </label>
          </helpLabels>
          <fields>
            <field>pageProviderName</field>
          </fields>
        </widget>
    
        <widget name="documentSuggestion_pageProviderPageSize" type="int">
          <categories>
            <category>widgetTypeConf</category>
          </categories>
          <labels>
            <label mode="any">Document page provider page size</label>
          </labels>
          <helpLabels>
            <label mode="any">
              Page provider result's page size. Default value is 20.
            </label>
          </helpLabels>
          <fields>
            <field>pageSize</field>
          </fields>
        </widget>
    
        <widget name="documentSuggestion_queryDemoPreview" type="text">
          <categories>
            <category>widgetTypeConf</category>
          </categories>
          <labels>
            <label mode="any">NXQL Query</label>
          </labels>
          <widgetModes>
            <mode value="any">hidden</mode>
            <mode value="edit_demo_preview">#{layout.mode}</mode>
          </widgetModes>
          <helpLabels>
            <label mode="any">
              NXQL Query to fetch the suggestions. This property is
              ignored if a
              Page Provider name is given.
              The widget doesn't append a '%'
              wildcard to the parameter passed to query.
              &lt;p&gt;
              Example: select *
              from Document where dc:title LIKE '?%'
              &lt;/p&gt;
            </label>
          </helpLabels>
          <fields>
            <field>query</field>
          </fields>
        </widget>
    
        <widget name="documentSuggestion_query" type="codearea">
          <categories>
            <category>widgetTypeConf</category>
          </categories>
          <labels>
            <label mode="any">NXQL Query</label>
          </labels>
          <widgetModes>
            <mode value="edit_demo_preview">hidden</mode>
          </widgetModes>
          <helpLabels>
            <label mode="any">
              NXQL Query to fetch the suggestions. This property is
              ignored if a
              Page Provider name is given.
              The widget doesn't append a '%'
              wildcard to the parameter passed to query.
              &lt;p&gt;
              Example: select *
              from Document where dc:title LIKE '?%'
              &lt;/p&gt;
            </label>
          </helpLabels>
          <fields>
            <field>query</field>
          </fields>
          <properties mode="any">
            <property name="language">nxql</property>
          </properties>
        </widget>
    
        <widget name="documentSuggestion_documentSchemas" type="text">
          <categories>
            <category>widgetTypeConf</category>
          </categories>
          <labels>
            <label mode="any">Document Schemas</label>
          </labels>
          <helpLabels>
            <label mode="any">
              Document Schemas that should be fetched and
              sent to the
              JS client side. You can enter comma separated values.
              &lt;p&gt;
              Example: dublincore,common
              &lt;/p&gt; </label>
          </helpLabels>
          <fields>
            <field>documentSchemas</field>
          </fields>
        </widget>
    
        <widget name="documentSuggestion_repository" type="text">
          <categories>
            <category>widgetTypeConf</category>
          </categories>
          <labels>
            <label mode="any">Target Repository</label>
          </labels>
          <helpLabels>
            <label mode="any">
              Id of the Nuxeo repositry that should be
              accessed.
              If
              unsed, the default repository will be used.
            </label>
          </helpLabels>
          <fields>
            <field>repository</field>
          </fields>
        </widget>
    
        <widget name="suggestion_orderable" type="checkbox">
          <categories>
            <category>widgetTypeConf</category>
          </categories>
          <labels>
            <label mode="any">Orderable</label>
          </labels>
          <helpLabels>
            <label mode="any">
              This attribute controls the possibility to order the
              selected items. Available since 5.6.
            </label>
          </helpLabels>
          <fields>
            <field>orderable</field>
          </fields>
        </widget>
    
        <widget name="userSuggestion_hideSearchTypeText" type="checkbox">
          <categories>
            <category>widgetTypeConf</category>
          </categories>
          <labels>
            <label mode="any">Hide Search Type Label</label>
          </labels>
          <helpLabels>
            <label mode="any">
              This attribute controls the possibility to hide the
              search type label. Available since 5.7.
            </label>
          </helpLabels>
          <fields>
            <field>hideSearchTypeText</field>
          </fields>
        </widget>
    
        <widget name="userSuggestion_displaySuggestionOnTop" type="checkbox">
          <categories>
            <category>widgetTypeConf</category>
          </categories>
          <labels>
            <label mode="any">Display Suggestion On Top</label>
          </labels>
          <helpLabels>
            <label mode="any">
              This attribute controls the possibility to display the
              suggestion
              box on top of the search results. Available since 5.7.
            </label>
          </helpLabels>
          <fields>
            <field>displaySuggestionOnTop</field>
          </fields>
        </widget>
    
        <widget name="suggestion_hideHelpLabel" type="checkbox">
          <categories>
            <category>widgetTypeConf</category>
          </categories>
          <labels>
            <label mode="any">Hide Help Label</label>
          </labels>
          <helpLabels>
            <label mode="any">
              This attribute controls the possibility to hide the
              help label. Available since 5.7.
            </label>
          </helpLabels>
          <fields>
            <field>hideHelpLabel</field>
          </fields>
        </widget>
    
        <widget name="ajaxReRender" type="text">
          <categories>
            <category>widgetTypeConf</category>
          </categories>
          <labels>
            <label mode="any">Ajax reRender</label>
          </labels>
          <helpLabels>
            <label mode="any">
              Ajax rerender ids, separated by commas.
            </label>
          </helpLabels>
          <fields>
            <field>ajaxReRender</field>
          </fields>
        </widget>
    
        <widget name="actionsDisplay" type="selectOneListbox">
          <categories>
            <category>widgetTypeConf</category>
          </categories>
          <labels>
            <label mode="any">Actions Display</label>
          </labels>
          <helpLabels>
            <label mode="any">
              If set to 'buttons', actions will be displayed as
              command
              buttons. If set to 'links', actions will be displayed as
              command links. If set to 'icons', actions will be displayed
              as icons.
              Else (default behaviour), actions will be
              displayed as command links
              and display their icons when
              defined.
            </label>
          </helpLabels>
          <fields>
            <field>actionsDisplay</field>
          </fields>
          <selectOptions>
            <option itemLabel="Icons and links (default)" itemValue="icons_links"/>
            <option itemLabel="Icons" itemValue="icons"/>
            <option itemLabel="Buttons" itemValue="buttons"/>
            <option itemLabel="Links" itemValue="links"/>
          </selectOptions>
        </widget>
    
        <widget name="formActionsDisplay" type="selectOneListbox">
          <categories>
            <category>widgetTypeConf</category>
          </categories>
          <labels>
            <label mode="any">Actions Display</label>
          </labels>
          <helpLabels>
            <label mode="any">
              If set to 'buttons', actions will be displayed as
              command
              buttons. If set to 'links', actions will be displayed as
              command links. If set to 'icons', actions will be displayed
              as icons.
              Else (default behaviour), actions will be
              displayed as command links
              and display their icons when
              defined.
            </label>
          </helpLabels>
          <fields>
            <field>actionsDisplay</field>
          </fields>
          <selectOptions>
            <option itemLabel="Buttons (default)" itemValue="buttons"/>
            <option itemLabel="Icons and links" itemValue="icons_links"/>
            <option itemLabel="Icons" itemValue="icons"/>
            <option itemLabel="Links" itemValue="links"/>
          </selectOptions>
        </widget>
    
      </extension>
  • nuxeo-platform-webapp-base-2023.20.15.jar /OSGI-INF/layouts-listing-contrib.xml
    <extension point="widgets" target="org.nuxeo.ecm.platform.forms.layout.LayoutStore">
    
        <widget name="listing_link_tab" type="text">
          <categories>
            <category>widgetTypeConf</category>
          </categories>
          <labels>
            <label mode="any">Tab</label>
          </labels>
          <helpLabels>
            <label mode="any">
              The tab to select when clicking on the
              document link. Available since 5.4.2.
            </label>
          </helpLabels>
          <fields>
            <field>tab</field>
          </fields>
        </widget>
    
        <widget name="listing_link_subTab" type="text">
          <categories>
            <category>widgetTypeConf</category>
          </categories>
          <labels>
            <label mode="any">Sub Tab</label>
          </labels>
          <helpLabels>
            <label mode="any">
              The sub tab to select when clicking on the
              document link. Available since 5.5.
            </label>
          </helpLabels>
          <fields>
            <field>subTab</field>
          </fields>
        </widget>
    
        <widget name="listing_link_tabs" type="text">
          <categories>
            <category>widgetTypeConf</category>
          </categories>
          <labels>
            <label mode="any">Tabs</label>
          </labels>
          <helpLabels>
            <label mode="any">
              Combination of tabs to select when clicking
              on the
              document link. Sample value: MAIN_TABS:document.
              Available since 7.3.
            </label>
          </helpLabels>
          <fields>
            <field>tabs</field>
          </fields>
        </widget>
    
        <widget name="listing_link_target" type="text">
          <categories>
            <category>widgetTypeConf</category>
          </categories>
          <labels>
            <label mode="any">Target</label>
          </labels>
          <helpLabels>
            <label mode="any">
              Available since 6.0. The target attribute
              of
              the link.
            </label>
          </helpLabels>
          <fields>
            <field>target</field>
          </fields>
        </widget>
    
        <widget name="listing_link_pattern" type="text">
          <categories>
            <category>widgetTypeConf</category>
          </categories>
          <labels>
            <label mode="any">Link Pattern</label>
          </labels>
          <helpLabels>
            <label mode="any">
              The document pattern to use for this link (optional). Available since 8.1.
            </label>
          </helpLabels>
          <fields>
            <field>pattern</field>
          </fields>
        </widget>
    
        <widget name="listing_link_view" type="text">
          <categories>
            <category>widgetTypeConf</category>
          </categories>
          <labels>
            <label mode="any">Link View</label>
          </labels>
          <helpLabels>
            <label mode="any">
              The document view to use for this link (optional). Available since 8.1.
            </label>
          </helpLabels>
          <fields>
            <field>view</field>
          </fields>
        </widget>
    
        <widget name="listing_link_hideExternalLink" type="checkbox">
          <categories>
            <category>widgetTypeConf</category>
          </categories>
          <labels>
            <label mode="any">Hide External Link</label>
          </labels>
          <helpLabels>
            <label mode="any">
              Available since 5.7.2. Flag indicating that
              the external link, opening the document in a new
              conversation, must be hidden.
            </label>
          </helpLabels>
          <fields>
            <field>hideExternalLink</field>
          </fields>
        </widget>
    
        <widget name="listing_link_hideDownloadLink" type="checkbox">
          <categories>
            <category>widgetTypeConf</category>
          </categories>
          <labels>
            <label mode="any">Hide Download Link</label>
          </labels>
          <helpLabels>
            <label mode="any">
              Available since 6.0. Flag indicating that
              the download link must be hidden.
            </label>
          </helpLabels>
          <fields>
            <field>hideDownloadLink</field>
          </fields>
        </widget>
    
      </extension>